#ifndef AS60X_H
#define AS60X_H

/** HAL HEADER INCLUDE*/
#include "stm32h7xx_hal_uart.h"
/** HAL HEADER INCLUDE*/

#include "main.h"
#include "string.h"
#include "stdio.h"

#define _AS60X_DEVICE_ADDR   ((uint32_t)0xFFFFFFFF)
#define _AS60X_PACKTAG_INSTR ((uint8_t)0x01)
#define _AS60X_PACKTAG_DATA  ((uint8_t)0x02)
#define _AS60X_PACKTAG_REPLY ((uint8_t)0x07)
#define _AS60X_PACKTAG_END   ((uint8_t)0x08)

void AS60X_SendPack(uint8_t tag, uint16_t len, uint8_t instr, const uint8_t* data);
void AS60X_ReadSysPara(char* str);
uint8_t AS60X_PS_GetImage(void);
uint8_t AS60X_PS_GenChar(uint8_t bID);
uint16_t AS60X_PS_Match(void);
uint8_t AS60X_PS_Enroll(void);
uint16_t AS60X_PS_Identify(void);
void AS60X_Init(UART_HandleTypeDef* husart);
void AS60X_IRQHandle(void);

#endif



